#ifndef __GRAPHICS_IINDEXBUFFER_HPP__
#define __GRAPHICS_IINDEXBUFFER_HPP__

#include <RevEng/RevEng.hpp>

#define GR_INDEX_BUFFER	0x00000001

namespace Graphics
{
	//Buffer de vertices
	//Contiene datos de vertices
	class IIndexBuffer : public RevEng::IObject
	{
	public:
		virtual ~IIndexBuffer() = 0;

		virtual void* Lock() = 0;
		virtual void Unlock() = 0;

		virtual RevEng::UInt32 GetIndexCount() = 0;
		virtual void SetIndexCount(RevEng::UInt32 Count) = 0;

		virtual RevEng::Enum GetClassId() const;
	};


	inline IIndexBuffer::~IIndexBuffer()
	{
	}


	inline RevEng::Enum IIndexBuffer::GetClassId() const
	{
		return GR_INDEX_BUFFER;
	}
}

#endif	//__GRAPHICS_IINDEXBUFFER_HPP__
